library(tidyverse)
library(sf)
library(rnaturalearth)
library(rnaturalearthdata)
geom_mapmap_data(map, region = ".", exact = FALSE, ...)
map_data('world') %>% as_tibble()
world0 <- map_data('world')
world0 %>%
ggplot() +
geom_map(aes(long, lat, map_id = region), map = world0, fill = "gray", col = "black", size = 0.1)
Warning: Ignoring unknown aesthetics: x and y
library(maps)
iso.expand("JP")
[1] "Japan"
iso3166
library(WDI)
wdi_cache <- WDIcache()
wdi_cache
$series
$country
NA
world0 <- map_data('world')
wdi_income <- wdi_cache$country %>% select(iso2c, income)
world_income <- world0 %>% mutate(iso2c = iso.alpha(region, n=2)) %>%
left_join(wdi_income, by = "iso2c")
world_income
world_income %>%
mutate(income_level = factor(income, levels = c("High income", "Upper middle income", "Lower middle income", "Low income", "Not classified", NA))) %>%
ggplot() +
geom_map(aes(long, lat, map_id = region, fill = income_level), map = world_income, col = "black", size = 0.1)
Warning: Ignoring unknown aesthetics: x and y
world0 %>% left_join(iso3166, by = c("region" = "mapname"))
wdi_cache$country
eastasia <- map_data('world', region = c("Japan", "South Korea", "North Korea", "China", "Mongolia", "Taiwan")) %>%
mutate(iso2c = iso.alpha(region, n=2))
eastasia %>%
ggplot() +
geom_map(aes(long, lat, map_id = region), map = eastasia, fill = "gray", col = "black", size = 0.1)
Warning: Ignoring unknown aesthetics: x and y
eastasia <- map_data('world', region = c("Japan", "South Korea", "North Korea", "China", "Mongolia", "Taiwan")) %>% mutate(iso2c = iso.alpha(region, n=2))
eastasia %>% left_join(wdi_income, by = "iso2c") %>%
mutate(income_level = factor(income, levels = c("High income", "Upper middle income", "Lower middle income", "Low income", "Not classified", NA))) %>%
ggplot() +
geom_map(aes(long, lat, map_id = region, fill = income_level), map = eastasia, col = "black", size = 0.1)
Warning: Ignoring unknown aesthetics: x and y
china <- map_data('world', region = c("China"))
china %>%
ggplot() +
geom_map(aes(long, lat, map_id = region, fill = subregion), map = china, col = "black", size = 0.1)
Warning: Ignoring unknown aesthetics: x and y
ea <- map_data('world', region = c("Japan", "South Korea", "North Korea", "China", "Mongolia", "Taiwan"))
ea %>%
ggplot() +
geom_map(aes(long, lat, map_id = region, fill = region), map = ea, col = "black", size = 0.1) +
labs(x = "", y = "") +
theme(legend.position="none", panel.grid = element_blank(),
axis.text.x=element_blank(), axis.ticks.x=element_blank(),
axis.text.y=element_blank(), axis.ticks.y=element_blank())
Warning: Ignoring unknown aesthetics: x and y
map_data('world') %>% ggplot(aes(long, lat)) + geom_polygon(aes(group = group, fill = region), col = "black", linewidth = 0.1) + theme(legend.position="none")
map_data('world2') %>% ggplot(aes(long, lat)) + geom_polygon(aes(group = group, fill = region), col = "black", linewidth = 0.1) + theme(legend.position="none")
world1 <- sf::st_as_sf(map('world', plot = FALSE, fill = TRUE))
ggplot() + geom_sf(data = world1)
world_sf <- sf::st_as_sf(map('world', plot = FALSE, fill = TRUE)) %>%
mutate(iso2c = iso.alpha(ID, n=2)) %>%
left_join(wdi_income, by = "iso2c")
world_sf %>% as_tibble()
world_sf %>%
mutate(income_level = factor(income, levels = c("High income", "Upper middle income", "Lower middle income", "Low income", "Not classified", NA))) %>%
ggplot() +
geom_sf(aes(fill = income_level))
world2 <- sf::st_transform(
world1,
"+proj=laea +y_0=0 +lon_0=155 +lat_0=-90 +ellps=WGS84 +no_defs"
)
ggplot() + geom_sf(data = world2)
https://datavizpyr.com/how-to-make-world-map-with-ggplot2-in-r/
volcano <- readr::read_csv("https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2020/2020-05-12/volcano.csv")
Rows: 958 Columns: 26── Column specification ───────────────────────────────────────────────────
Delimiter: ","
chr (18): volcano_name, primary_volcano_type, last_eruption_year, count...
dbl (8): volcano_number, latitude, longitude, elevation, population_wi...
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
volcano
ggplot() +
geom_map(
data = world0, map = world0,
aes(long, lat, map_id = region),
color = "white", fill = "lightgray", size = 0.1
) +
geom_point(
data = volcano,
aes(longitude, latitude, color = primary_volcano_type),
alpha = 0.7
)
Warning: Ignoring unknown aesthetics: x and y
annotation_mapdf <- data.frame(
name = c("Charlotte", "Raleigh", "Greensboro"),
lat = c(35.227, 35.772, 36.073),
long = c(-80.843, -78.639, -79.792)
)
p <- ggplot(df, aes(x = long, y = lat)) +
annotation_map(
map_data("state"),
fill = "antiquewhite", colour = "darkgrey"
) +
geom_point(color = "blue") +
geom_text(
aes(label = name),
hjust = 1.105, vjust = 1.05, color = "blue"
)
p + xlim(-84, -76) + ylim(34, 37.2)
p +
coord_sf(
crs = sf::st_crs(3347),
default_crs = sf::st_crs(4326), # data is provided as long-lat
xlim = c(-84, -76),
ylim = c(34, 37.2)
)
nc <- sf::st_read(system.file("shape/nc.shp", package = "sf"), quiet = TRUE)
p +
geom_sf(
data = nc, inherit.aes = FALSE,
fill = NA, color = "black", linewidth = 0.1
) +
coord_sf(crs = sf::st_crs(3347), default_crs = sf::st_crs(4326))
geom_sfSee also, coord_sf, geom_sf_label,
geom_sf_text, stat_sf.
This set of geom, stat, and coord are used to visualise simple feature (sf) objects. For simple plots, you will only need geom_sf() as it uses stat_sf() and adds coord_sf() for you. geom_sf() is an unusual geom because it will draw different geometric objects depending on what simple features are present in the data: you can get points, lines, or polygons. For text and labels, you can use geom_sf_text() and geom_sf_label().
geom_sf(
mapping = aes(),
data = NULL,
stat = "sf",
position = "identity",
na.rm = FALSE,
show.legend = NA,
inherit.aes = TRUE,
...
)
# map_data {ggplot2}
# Easily turn data from the maps package into a data frame suitable for plotting with ggplot2.
world_map <- map_data("world")
library(maps)
world1 <- sf::st_as_sf(map('world', plot = FALSE, fill = TRUE))
ggplot() + geom_sf(data = world1)
world_map <- map('world', plot = FALSE)
glimpse(world_map)
List of 4
$ x : num [1:82403] -69.9 -69.9 -69.9 -70 -70.1 ...
$ y : num [1:82403] 12.5 12.4 12.4 12.5 12.5 ...
$ range: num [1:4] -180 190.3 -85.2 83.6
$ names: chr [1:1627] "Aruba" "Afghanistan" "Angola" "Angola:Cabinda" ...
- attr(*, "class")= chr "map"
geom_polygon# When using geom_polygon, you will typically need two data frames:
# one contains the coordinates of each polygon (positions), and the
# other the values associated with each polygon (values). An id
# variable links the two together
ids <- factor(c("1.1", "2.1", "1.2", "2.2", "1.3", "2.3"))
values <- data.frame(
id = ids,
value = c(3, 3.1, 3.1, 3.2, 3.15, 3.5)
)
positions <- data.frame(
id = rep(ids, each = 4),
x = c(2, 1, 1.1, 2.2, 1, 0, 0.3, 1.1, 2.2, 1.1, 1.2, 2.5, 1.1, 0.3,
0.5, 1.2, 2.5, 1.2, 1.3, 2.7, 1.2, 0.5, 0.6, 1.3),
y = c(-0.5, 0, 1, 0.5, 0, 0.5, 1.5, 1, 0.5, 1, 2.1, 1.7, 1, 1.5,
2.2, 2.1, 1.7, 2.1, 3.2, 2.8, 2.1, 2.2, 3.3, 3.2)
)
# Currently we need to manually merge the two together
datapoly <- merge(values, positions, by = c("id"))
p <- ggplot(datapoly, aes(x = x, y = y)) +
geom_polygon(aes(fill = value, group = id))
p
# Which seems like a lot of work, but then it's easy to add on
# other features in this coordinate system, e.g.:
set.seed(1)
stream <- data.frame(
x = cumsum(runif(50, max = 0.1)),
y = cumsum(runif(50,max = 0.1))
)
p + geom_line(data = stream, colour = "grey30", linewidth = 5)
# And if the positions are in longitude and latitude, you can use
# coord_map to produce different map projections.
# As of R version 3.6 geom_polygon() supports polygons with holes
# Use the subgroup aesthetic to differentiate holes from the main polygon
holes <- do.call(rbind, lapply(split(datapoly, datapoly$id), function(df) {
df$x <- df$x + 0.5 * (mean(df$x) - df$x)
df$y <- df$y + 0.5 * (mean(df$y) - df$y)
df
}))
datapoly$subid <- 1L
holes$subid <- 2L
datapoly <- rbind(datapoly, holes)
p <- ggplot(datapoly, aes(x = x, y = y)) +
geom_polygon(aes(fill = value, group = id, subgroup = subid))
p
https://www.naturalearthdata.com
Get natural earth world country polygons
Manual: https://cran.r-project.org/web/packages/rnaturalearth/rnaturalearth.pdf
ne_countriesne_countries(
scale = 110,
type = "countries",
continent = NULL,
country = NULL,
geounit = NULL,
sovereignty = NULL,
returnclass = c("sp", "sf")
)
ne_countries(scale = "large", returnclass = "sf") %>%
ggplot() + geom_sf()
ne_countries(scale = "small", returnclass = "sf") %>%
ggplot() + geom_sf()
world <- ne_countries(scale = "medium", returnclass = "sf")
class(world)
[1] "sf" "data.frame"
world %>% as_tibble()
world %>% colnames()
[1] "scalerank" "featurecla" "labelrank" "sovereignt" "sov_a3"
[6] "adm0_dif" "level" "type" "admin" "adm0_a3"
[11] "geou_dif" "geounit" "gu_a3" "su_dif" "subunit"
[16] "su_a3" "brk_diff" "name" "name_long" "brk_a3"
[21] "brk_name" "brk_group" "abbrev" "postal" "formal_en"
[26] "formal_fr" "note_adm0" "note_brk" "name_sort" "name_alt"
[31] "mapcolor7" "mapcolor8" "mapcolor9" "mapcolor13" "pop_est"
[36] "gdp_md_est" "pop_year" "lastcensus" "gdp_year" "economy"
[41] "income_grp" "wikipedia" "fips_10" "iso_a2" "iso_a3"
[46] "iso_n3" "un_a3" "wb_a2" "wb_a3" "woe_id"
[51] "adm0_a3_is" "adm0_a3_us" "adm0_a3_un" "adm0_a3_wb" "continent"
[56] "region_un" "subregion" "region_wb" "name_len" "long_len"
[61] "abbrev_len" "tiny" "homepart" "geometry"
world %>% ggplot() + geom_sf()
world %>% ggplot() + geom_sf(aes(fill = income_grp))
world %>% filter(subregion == "South-Eastern Asia") %>%
ggplot() + geom_sf(aes(fill = income_grp))
type argumentne_countries(type = "countries", country = "Japan", scale = "medium", returnclass = "sf") %>%
ggplot() + geom_sf()
ne_countries(type = "map_units", country = "Japan", scale = "medium", returnclass = "sf") %>%
ggplot() + geom_sf()
library(sp)
sf_world <- ne_countries(returnclass = "sf")
plot(sf_world)
Warning: plotting the first 9 out of 94 attributes; use max.plot = 94 to plot all
spdf_tiny_countries <- ne_countries(type = "tiny_countries", scale = 50)
plot(spdf_tiny_countries)
ne_statesGet natural earth world state (admin level 1) polygons
Description: returns state polygons (administrative level 1) for specified countries
ne_states(
country = NULL,
geounit = NULL,
iso_a2 = NULL,
spdf = NULL,
returnclass = c("sp", "sf")
)
country: a character vector of country names.
geounit: a character vector of geounit names.
iso_a2: a character vector of iso_a2 country codes
spdf: an optional alternative states map
returnclass: ‘sp’ default or ‘sf’ for Simple Features
world_admin1 <- ne_states(returnclass = "sf")
class(world_admin1)
[1] "sf" "data.frame"
world_admin1 %>% colnames()
[1] "featurecla" "scalerank" "adm1_code" "diss_me" "iso_3166_2"
[6] "wikipedia" "iso_a2" "adm0_sr" "name" "name_alt"
[11] "name_local" "type" "type_en" "code_local" "code_hasc"
[16] "note" "hasc_maybe" "region" "region_cod" "provnum_ne"
[21] "gadm_level" "check_me" "datarank" "abbrev" "postal"
[26] "area_sqkm" "sameascity" "labelrank" "name_len" "mapcolor9"
[31] "mapcolor13" "fips" "fips_alt" "woe_id" "woe_label"
[36] "woe_name" "latitude" "longitude" "sov_a3" "adm0_a3"
[41] "adm0_label" "admin" "geonunit" "gu_a3" "gn_id"
[46] "gn_name" "gns_id" "gns_name" "gn_level" "gn_region"
[51] "gn_a1_code" "region_sub" "sub_code" "gns_level" "gns_lang"
[56] "gns_adm1" "gns_region" "min_label" "max_label" "min_zoom"
[61] "wikidataid" "name_ar" "name_bn" "name_de" "name_en"
[66] "name_es" "name_fr" "name_el" "name_hi" "name_hu"
[71] "name_id" "name_it" "name_ja" "name_ko" "name_nl"
[76] "name_pl" "name_pt" "name_ru" "name_sv" "name_tr"
[81] "name_vi" "name_zh" "ne_id" "name_he" "name_uk"
[86] "name_ur" "name_fa" "name_zht" "FCLASS_ISO" "FCLASS_US"
[91] "FCLASS_FR" "FCLASS_RU" "FCLASS_ES" "FCLASS_CN" "FCLASS_TW"
[96] "FCLASS_IN" "FCLASS_NP" "FCLASS_PK" "FCLASS_DE" "FCLASS_GB"
[101] "FCLASS_BR" "FCLASS_IL" "FCLASS_PS" "FCLASS_SA" "FCLASS_EG"
[106] "FCLASS_MA" "FCLASS_PT" "FCLASS_AR" "FCLASS_JP" "FCLASS_KO"
[111] "FCLASS_VN" "FCLASS_TR" "FCLASS_ID" "FCLASS_PL" "FCLASS_GR"
[116] "FCLASS_IT" "FCLASS_NL" "FCLASS_SE" "FCLASS_BD" "FCLASS_UA"
[121] "FCLASS_TLC" "geometry"
world_admin1 |> as_tibble()
world_admin1 |> glimpse()
Rows: 4,596
Columns: 122
$ featurecla <chr> "Admin-1 states provinces lakes", "Admin-1 states prov…
$ scalerank <int> 3, 6, 2, 6, 3, 4, 4, 3, 4, 3, 4, 3, 3, 10, 9, 2, 2, 2,…
$ adm1_code <chr> "ARG-1309", "URY-8", "IDN-1185", "MYS-1186", "CHL-2694…
$ diss_me <int> 1309, 8, 1185, 1186, 2694, 1936, 1937, 2693, 1939, 269…
$ iso_3166_2 <chr> "AR-E", "UY-PA", "ID-KI", "MY-12", "CL-AP", "BO-L", "B…
$ wikipedia <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ iso_a2 <chr> "AR", "UY", "ID", "MY", "CL", "BO", "BO", "CL", "BO", …
$ adm0_sr <int> 1, 1, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, …
$ name <chr> "Entre Ríos", "Paysandú", "Kalimantan Timur", "Sabah",…
$ name_alt <chr> "Entre-Rios", NA, "Kaltim", "North Borneo", NA, NA, NA…
$ name_local <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ type <chr> "Provincia", "Departamento", "Propinsi", "State", "Reg…
$ type_en <chr> "Province", "Department", "Province", "State", "Region…
$ code_local <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ code_hasc <chr> "AR.ER", "UY.PA", "ID.KI", "MY.SA", "CL.AP", "BO.LP", …
$ note <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ hasc_maybe <chr> NA, NA, NA, NA, NA, NA, NA, NA, "BO.OR|BOL-POT", NA, "…
$ region <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ region_cod <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ provnum_ne <int> 10, 19, 15, 1, 0, 8, 7, 0, 1, 20006, 8, 22, 5, 0, 0, N…
$ gadm_level <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, …
$ check_me <int> 20, 0, 20, 20, 20, 0, 0, 20, 10, 20, 10, 20, 20, 20, 2…
$ datarank <int> 3, 8, 1, 6, 3, 8, 6, 3, 6, 3, 5, 3, 3, 10, 8, 1, 1, 1,…
$ abbrev <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ postal <chr> "ER", "PA", "KI", "SA", NA, "LP", "OR", "TA", "PO", "A…
$ area_sqkm <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NA, 0, 0,…
$ sameascity <int> -99, -99, -99, -99, 7, 6, 6, -99, -99, 6, 7, 6, -99, -…
$ labelrank <int> 3, 6, 2, 6, 7, 6, 6, 3, 4, 6, 7, 6, 3, 20, 9, 2, 2, 2,…
$ name_len <int> 10, 8, 16, 5, 18, 6, 5, 8, 6, 11, 5, 5, 5, 8, 7, 6, 8,…
$ mapcolor9 <int> 3, 2, 6, 3, 5, 2, 2, 5, 2, 5, 4, 3, 3, 6, 3, 2, 4, 4, …
$ mapcolor13 <int> 13, 10, 11, 6, 9, 3, 3, 9, 3, 9, 11, 13, 13, 3, 7, 2, …
$ fips <chr> "AR08", "UY11", "ID14", "MY16", NA, "BL04", "BL05", "C…
$ fips_alt <chr> NA, NA, NA, NA, NA, NA, NA, NA, "BL05", NA, "PE18", NA…
$ woe_id <int> 2344682, 2347650, 2345723, 2346310, 56043702, 2344804,…
$ woe_label <chr> "Entre Rios, AR, Argentina", "Paysandú, UY, Uruguay",…
$ woe_name <chr> "Entre Ríos", "Paysandú", "Kalimantan Timur", "Sabah",…
$ latitude <dbl> -32.02750, -32.09330, 1.28915, 5.31115, -18.32070, -14…
$ longitude <dbl> -59.28240, -57.22400, 116.35400, 117.09500, -69.68040,…
$ sov_a3 <chr> "ARG", "URY", "IDN", "MYS", "CHL", "BOL", "BOL", "CHL"…
$ adm0_a3 <chr> "ARG", "URY", "IDN", "MYS", "CHL", "BOL", "BOL", "CHL"…
$ adm0_label <int> 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, …
$ admin <chr> "Argentina", "Uruguay", "Indonesia", "Malaysia", "Chil…
$ geonunit <chr> "Argentina", "Uruguay", "Indonesia", "Malaysia", "Chil…
$ gu_a3 <chr> "ARG", "URY", "IDN", "MYS", "CHL", "BOL", "BOL", "CHL"…
$ gn_id <int> 3434137, 3441242, 1641897, 1733039, 6693562, 3911924, …
$ gn_name <chr> "Provincia de Entre Rios", "Departamento de Paysandu",…
$ gns_id <int> -988655, -908097, -2680740, -2405166, 10749159, -69341…
$ gns_name <chr> "Entre Rios", "Paysandu, Departamento de", "Kalimantan…
$ gn_level <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, NA, 1, 1,…
$ gn_region <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ gn_a1_code <chr> "AR.08", "UY.11", "ID.14", "MY.16", "CL.16", "BO.04", …
$ region_sub <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ sub_code <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ gns_level <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, NA, 1, 1,…
$ gns_lang <chr> "khm", "fra", "ind", "fil", "ara", "kor", "kor", "fra"…
$ gns_adm1 <chr> "AR08", "UY11", "ID14", "MY16", "CI16", "BL04", "BL05"…
$ gns_region <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ min_label <dbl> 6.0, 8.0, 5.0, 7.0, 6.0, 6.6, 6.6, 6.0, 6.6, 6.0, 6.6,…
$ max_label <dbl> 11.0, 11.0, 10.1, 11.0, 11.0, 11.0, 11.0, 11.0, 11.0, …
$ min_zoom <dbl> 6.0, 8.0, 4.6, 7.0, 6.0, 6.6, 6.6, 6.0, 6.6, 6.0, 6.6,…
$ wikidataid <chr> "Q44762", "Q16576", "Q3899", "Q179029", "Q2109", "Q272…
$ name_ar <chr> "إنتري ريوس", "إدارة بايساندو", "كالمنتان الشرقية", "ص…
$ name_bn <chr> "এন্ত্রে রিও প্রদেশ", "পেসান্ডো বিভাগ", "পূর্ব কালিমান্তান", …
$ name_de <chr> "Entre Ríos", "Paysandú", "Ostkalimantan", "Sabah", "A…
$ name_en <chr> "Entre Ríos", "Paysandú", "East Kalimantan", "Sabah", …
$ name_es <chr> "Entre Ríos", "Paysandú", "Kalimantan Oriental", "Saba…
$ name_fr <chr> "Entre Ríos", "Paysandú", "Kalimantan oriental", "Saba…
$ name_el <chr> "Έντρε Ρίος", "Παϊσαντού", "Ανατολικό Καλιμαντάν", "Σα…
$ name_hi <chr> "एन्ट्रे रियोस", "पयसंदु विभाग", "पूर्व कालिमंतान", "साबाह राज्…
$ name_hu <chr> "Entre Ríos", "Paysandú", "Kelet-Kalimantan", "Sabah",…
$ name_id <chr> "Entre Ríos", "Departemen Paysandú", "Kalimantan Timur…
$ name_it <chr> "Entre Ríos", "dipartimento di Paysandú", "Kalimantan …
$ name_ja <chr> "エントレ・リオス州", "パイサンドゥ県", "東カリマンタ…
$ name_ko <chr> "엔트레리오스", "파이산두", "동칼리만탄", "사바", "아…
$ name_nl <chr> "Entre Ríos", "Paysandú", "Oost-Kalimantan", "Sabah", …
$ name_pl <chr> "Entre Ríos", "Paysandú", "Borneo Wschodnie", "Sabah",…
$ name_pt <chr> "Entre Ríos", "Paysandú", "Kalimantan Oriental", "Sabá…
$ name_ru <chr> "Энтре-Риос", "Пайсанду", "Восточный Калимантан", "Саб…
$ name_sv <chr> "Entre Ríos", "Paysandú", "Kalimantan Timur", "Sabah",…
$ name_tr <chr> "Entre Ríos eyaleti", "Paysandu Departmanı", "Doğu Kal…
$ name_vi <chr> "Entre Ríos", "Paysandú", "Đông Kalimantan", "Sabah", …
$ name_zh <chr> "恩特雷里奥斯省", "派桑杜省", "东加里曼丹省", "沙巴", …
$ ne_id <dbl> 1159309789, 1159307733, 1159310009, 1159310033, 115931…
$ name_he <chr> "אנטרה ריוס", "פאיסאנדו", "מזרח קלימנטאן", "סבה", "ארי…
$ name_uk <chr> "Ентре-Ріос", "Пайсанду", "Східний Калімантан", "Сабах…
$ name_ur <chr> "صوبہ انترے ریوس", "پایساندو محکمہ", "مشرقی کالیمانتان…
$ name_fa <chr> "ایالت انتره ریوز", "بخش پایساندو", "کالیمانتان شرقی",…
$ name_zht <chr> "恩特雷里奥斯省", "派桑杜省", "東加里曼丹省", "沙巴", …
$ FCLASS_ISO <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_US <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_FR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_RU <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_ES <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_CN <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_TW <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_IN <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_NP <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_PK <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_DE <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_GB <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_BR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_IL <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_PS <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_SA <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_EG <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_MA <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_PT <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_AR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_JP <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_KO <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_VN <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_TR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_ID <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_PL <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_GR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_IT <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_NL <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_SE <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_BD <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_UA <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_TLC <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ geometry <MULTIPOLYGON [°]> MULTIPOLYGON (((-58.20011 -..., MULTIPOLY…
world_admin1 %>% as_tibble() %>%
filter(iso_a2 != "-1") %>% arrange(admin) %>%
distinct(iso_a2, admin)
world_admin1 %>% pull(FCLASS_JP) %>% unique()
[1] NA "Unrecognized"
japan <- world_admin1[world_admin1$admin == "Japan",]
japan |> as_tibble()
ggplot() + geom_sf(data = japan) + theme_minimal()
country <- "Japan"
world_admin1 %>% filter(admin == country) %>%
ggplot() + geom_sf()
iso2 <- "ID"
world_admin1 %>% filter(iso_a2 == iso2) %>%
ggplot() + geom_sf()
iso2s <- c("IN","PK","BD","LK")
world_admin1 %>% filter(iso_a2 %in% iso2s) %>%
ggplot() + geom_sf(aes(fill = admin))
regions <- c("Tohoku")
world_admin1 %>% filter(region %in% regions) %>%
ggplot() + geom_sf()
world_admin1 %>% filter(iso_a2 == "JP") %>%
ggplot() + geom_sf(aes(fill = region))
world_admin1 %>% filter(iso_a2 == "JP") %>%
ggplot() + geom_sf(aes(fill = name_local))
world_admin1 %>% filter(iso_a2 == "JP") %>%
ggplot() + geom_sf(aes(fill = name_local)) +
theme(legend.position = "none")
world_admin1 %>% arrange(admin) %>% pull(admin) %>% unique()
[1] "Afghanistan"
[2] "Akrotiri Sovereign Base Area"
[3] "Aland"
[4] "Albania"
[5] "Algeria"
[6] "American Samoa"
[7] "Andorra"
[8] "Angola"
[9] "Anguilla"
[10] "Antarctica"
[11] "Antigua and Barbuda"
[12] "Argentina"
[13] "Armenia"
[14] "Aruba"
[15] "Ashmore and Cartier Islands"
[16] "Australia"
[17] "Austria"
[18] "Azerbaijan"
[19] "Bahrain"
[20] "Bangladesh"
[21] "Barbados"
[22] "Baykonur Cosmodrome"
[23] "Belarus"
[24] "Belgium"
[25] "Belize"
[26] "Benin"
[27] "Bermuda"
[28] "Bhutan"
[29] "Bolivia"
[30] "Bosnia and Herzegovina"
[31] "Botswana"
[32] "Brazil"
[33] "British Indian Ocean Territory"
[34] "British Virgin Islands"
[35] "Brunei"
[36] "Bulgaria"
[37] "Burkina Faso"
[38] "Burundi"
[39] "Cambodia"
[40] "Cameroon"
[41] "Canada"
[42] "Cape Verde"
[43] "Caribbean Netherlands"
[44] "Cayman Islands"
[45] "Central African Republic"
[46] "Chad"
[47] "Chile"
[48] "China"
[49] "Clipperton Island"
[50] "Colombia"
[51] "Comoros"
[52] "Cook Islands"
[53] "Coral Sea Islands"
[54] "Costa Rica"
[55] "Croatia"
[56] "Cuba"
[57] "Curaçao"
[58] "Cyprus"
[59] "Czech Republic"
[60] "Democratic Republic of the Congo"
[61] "Denmark"
[62] "Dhekelia Sovereign Base Area"
[63] "Djibouti"
[64] "Dominica"
[65] "Dominican Republic"
[66] "East Timor"
[67] "Ecuador"
[68] "Egypt"
[69] "El Salvador"
[70] "Equatorial Guinea"
[71] "Eritrea"
[72] "Estonia"
[73] "Ethiopia"
[74] "Falkland Islands"
[75] "Faroe Islands"
[76] "Federated States of Micronesia"
[77] "Fiji"
[78] "Finland"
[79] "France"
[80] "French Polynesia"
[81] "French Southern and Antarctic Lands"
[82] "Gabon"
[83] "Gambia"
[84] "Gaza Strip"
[85] "Georgia"
[86] "Germany"
[87] "Ghana"
[88] "Gibraltar"
[89] "Greece"
[90] "Greenland"
[91] "Grenada"
[92] "Guam"
[93] "Guatemala"
[94] "Guernsey"
[95] "Guinea"
[96] "Guinea Bissau"
[97] "Guyana"
[98] "Haiti"
[99] "Heard Island and McDonald Islands"
[100] "Honduras"
[101] "Hong Kong S.A.R."
[102] "Hungary"
[103] "Iceland"
[104] "India"
[105] "Indian Ocean Territories"
[106] "Indonesia"
[107] "Iran"
[108] "Iraq"
[109] "Ireland"
[110] "Isle of Man"
[111] "Israel"
[112] "Italy"
[113] "Ivory Coast"
[114] "Jamaica"
[115] "Japan"
[116] "Jersey"
[117] "Jordan"
[118] "Kazakhstan"
[119] "Kenya"
[120] "Kiribati"
[121] "Kosovo"
[122] "Kuwait"
[123] "Kyrgyzstan"
[124] "Laos"
[125] "Latvia"
[126] "Lebanon"
[127] "Lesotho"
[128] "Liberia"
[129] "Libya"
[130] "Liechtenstein"
[131] "Lithuania"
[132] "Luxembourg"
[133] "Macau S.A.R"
[134] "Macedonia"
[135] "Madagascar"
[136] "Malawi"
[137] "Malaysia"
[138] "Maldives"
[139] "Mali"
[140] "Malta"
[141] "Marshall Islands"
[142] "Mauritania"
[143] "Mauritius"
[144] "Mexico"
[145] "Moldova"
[146] "Monaco"
[147] "Mongolia"
[148] "Montenegro"
[149] "Montserrat"
[150] "Morocco"
[151] "Mozambique"
[152] "Myanmar"
[153] "Namibia"
[154] "Nauru"
[155] "Nepal"
[156] "Netherlands"
[157] "New Caledonia"
[158] "New Zealand"
[159] "Nicaragua"
[160] "Niger"
[161] "Nigeria"
[162] "Niue"
[163] "Norfolk Island"
[164] "North Korea"
[165] "Northern Cyprus"
[166] "Northern Mariana Islands"
[167] "Norway"
[168] "Oman"
[169] "Pakistan"
[170] "Palau"
[171] "Panama"
[172] "Papua New Guinea"
[173] "Paraguay"
[174] "Peru"
[175] "Philippines"
[176] "Pitcairn Islands"
[177] "Poland"
[178] "Portugal"
[179] "Puerto Rico"
[180] "Qatar"
[181] "Republic of Serbia"
[182] "Republic of the Congo"
[183] "Romania"
[184] "Russia"
[185] "Rwanda"
[186] "S. Sudan"
[187] "Saint Barthelemy"
[188] "Saint Helena"
[189] "Saint Kitts and Nevis"
[190] "Saint Lucia"
[191] "Saint Martin"
[192] "Saint Pierre and Miquelon"
[193] "Saint Vincent and the Grenadines"
[194] "Samoa"
[195] "San Marino"
[196] "Sao Tome and Principe"
[197] "Saudi Arabia"
[198] "Senegal"
[199] "Seychelles"
[200] "Siachen Glacier"
[201] "Sierra Leone"
[202] "Singapore"
[203] "Sint Maarten"
[204] "Slovakia"
[205] "Slovenia"
[206] "Solomon Islands"
[207] "Somalia"
[208] "Somaliland"
[209] "South Africa"
[210] "South Georgia and the Islands"
[211] "South Korea"
[212] "Spain"
[213] "Spratly Is."
[214] "Sri Lanka"
[215] "Sudan"
[216] "Suriname"
[217] "Swaziland"
[218] "Sweden"
[219] "Switzerland"
[220] "Syria"
[221] "Taiwan"
[222] "Tajikistan"
[223] "Thailand"
[224] "The Bahamas"
[225] "Togo"
[226] "Tonga"
[227] "Trinidad and Tobago"
[228] "Tunisia"
[229] "Turkey"
[230] "Turkmenistan"
[231] "Turks and Caicos Islands"
[232] "Tuvalu"
[233] "US Naval Base Guantanamo Bay"
[234] "Uganda"
[235] "Ukraine"
[236] "United Arab Emirates"
[237] "United Kingdom"
[238] "United Republic of Tanzania"
[239] "United States Minor Outlying Islands"
[240] "United States Virgin Islands"
[241] "United States of America"
[242] "Uruguay"
[243] "Uzbekistan"
[244] "Vanuatu"
[245] "Vatican"
[246] "Venezuela"
[247] "Vietnam"
[248] "Wallis and Futuna"
[249] "West Bank"
[250] "Western Sahara"
[251] "Yemen"
[252] "Zambia"
[253] "Zimbabwe"
ne_downloaddownload data from Natural Earth and (optionally) read into R
ne_download(scale = 110, type = "countries", returnclass = "sf") %>%
ggplot() + geom_sf()
trying URL 'https://naturalearth.s3.amazonaws.com/110m_cultural/ne_110m_admin_0_countries.zip'
Content type 'application/zip' length 214976 bytes (209 KB)
==================================================
downloaded 209 KB
# for raster, here an example with Manual Shaded Relief (MSR) download & load
rst <- ne_download(scale = 50, type = "MSR_50M", category = "raster")
trying URL 'https://naturalearth.s3.amazonaws.com/50m_raster/MSR_50M.zip'
Content type 'application/zip' length 17984241 bytes (17.2 MB)
==================================================
downloaded 17.2 MB
# load after having downloaded
rst <- ne_load(
scale = 50, type = "MSR_50M", category = "raster", destdir =
getwd()
)
# plot
library(terra)
terra 1.7.29
Attaching package: ‘terra’
The following object is masked from ‘package:tidyr’:
extract
terra::plot(rst)
# end dontrun
library(geodata)
tokyo_prefecture <- gadm("JPN", level = 2, path = "Tokyo")
tokyo <- st_as_sf(tokyo_prefecture)
tokyo %>% as_tibble()
tokyo %>% colnames()
[1] "GID_2" "GID_0" "COUNTRY" "GID_1" "NAME_1"
[6] "NL_NAME_1" "NAME_2" "VARNAME_2" "NL_NAME_2" "TYPE_2"
[11] "ENGTYPE_2" "CC_2" "HASC_2" "geometry"
tokyo %>% filter(NAME_1 == "Kanagawa") %>%
ggplot() + geom_sf(aes(fill = NAME_2)) + theme(legend.position = "none")
vietnam <- world_admin1 %>% filter(admin == "Vietnam")
glimpse(vietnam)
Rows: 63
Columns: 122
$ featurecla <chr> "Admin-1 states provinces lakes", "Admin-1 states prov…
$ scalerank <int> 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, …
$ adm1_code <chr> "VNM-486", "VNM-4835", "VNM-477", "VNM-478", "VNM-484"…
$ diss_me <int> 486, 4835, 477, 478, 484, 444, 503, 500, 498, 502, 450…
$ iso_3166_2 <chr> "VN-28", "VN-72", "VN-33", "VN-30", "VN-58", "VN-37", …
$ wikipedia <chr> NA, "http://en.wikipedia.org/wiki/%C4%90%E1%BA%AFk_N%C…
$ iso_a2 <chr> "VN", "VN", "VN", "VN", "VN", "VN", "VN", "VN", "VN", …
$ adm0_sr <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
$ name <chr> "Kon Tum", "Đắk Nông", "Đắk Lắk", "Gia Lai", "Bình Phư…
$ name_alt <chr> NA, "Dak Nong", "Dak Lak|Dac Lac", "Gia Lai", "Binh Ph…
$ name_local <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ type <chr> "Tỉnh", "Province", "Province", "Province", "Tỉnh", "T…
$ type_en <chr> "Province", "Region", "Region", "Region", "Province", …
$ code_local <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ code_hasc <chr> "VN.KT", "VN.DO", "VN.DC", "VN.GL", "VN.BP", "VN.TN", …
$ note <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ hasc_maybe <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ region <chr> "Nam Trung Bộ", "Tây Nguyên", "Tây Nguyên", "Nam Trung…
$ region_cod <chr> "VNM-KTM", "VNM-DLA", "VNM-DLA", "VNM-GLA", "VNM-SBE",…
$ provnum_ne <int> 19, 0, 22, 23, 20, 21, 31, 13, 14, 6, 57, 58, 55, 54, …
$ gadm_level <int> 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, …
$ check_me <int> 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20…
$ datarank <int> 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, …
$ abbrev <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ postal <chr> NA, NA, NA, NA, "BP", "TN", "LA", "DT", "AG", "KG", "D…
$ area_sqkm <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
$ sameascity <int> -99, -99, -99, -99, -99, -99, -99, -99, -99, -99, -99,…
$ labelrank <int> 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, …
$ name_len <int> 7, 8, 7, 7, 10, 8, 7, 9, 8, 10, 10, 6, 9, 7, 7, 10, 9,…
$ mapcolor9 <int> 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, …
$ mapcolor13 <int> 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, …
$ fips <chr> "VM55", "VM91", "VM88", "VM49", "VM76", "VM33", "VM24"…
$ fips_alt <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ woe_id <int> 20070076, 28301719, 2347720, 2347733, 20070086, 234771…
$ woe_label <chr> "Kon Tum, VN, Vietnam", "Dac Nong, VN, Vietnam", "Dak …
$ woe_name <chr> "Kon Tum", "Dac Nong", "Dak Lak", "Gia Lai", "Bình Phư…
$ latitude <dbl> 14.74510, 12.14250, 12.76910, 13.84930, 11.68050, 11.4…
$ longitude <dbl> 107.969, 107.660, 108.133, 108.156, 106.897, 106.140, …
$ sov_a3 <chr> "VNM", "VNM", "VNM", "VNM", "VNM", "VNM", "VNM", "VNM"…
$ adm0_a3 <chr> "VNM", "VNM", "VNM", "VNM", "VNM", "VNM", "VNM", "VNM"…
$ adm0_label <int> 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, …
$ admin <chr> "Vietnam", "Vietnam", "Vietnam", "Vietnam", "Vietnam",…
$ geonunit <chr> "Vietnam", "Vietnam", "Vietnam", "Vietnam", "Vietnam",…
$ gu_a3 <chr> "VNM", "VNM", "VNM", "VNM", "VNM", "VNM", "VNM", "VNM"…
$ gn_id <int> 1565088, 1904987, 1584169, 1581088, 1905480, 1566557, …
$ gn_name <chr> "Tinh Kon Tum", "Dak Nong", "Tinh Dak Lak", "Tinh Gia …
$ gns_id <int> -3731073, 11412978, -3711947, -3715035, 409916, -37296…
$ gns_name <chr> "Kon Tum, Tinh", "¿ak Nong, Tinh", "Dak Lak, Tinh", "…
$ gn_level <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
$ gn_region <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ gn_a1_code <chr> "VN.55", "VN.91", "VN.88", "VN.49", "VN.76", "VN.33", …
$ region_sub <chr> NA, "Central Highlands", "Central Highlands", "South C…
$ sub_code <chr> NA, NA, NA, "VM57", NA, "VM33", "VM24", "VM46", "VM43"…
$ gns_level <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
$ gns_lang <chr> "eng", "vie", "vie", "vie", "fas", "eng", "eng", "vie"…
$ gns_adm1 <chr> "VM55", "VM91", "VM88", "VM49", "VM76", "VM33", "VM24"…
$ gns_region <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ min_label <dbl> 8.0, 8.0, 8.0, 8.0, 8.0, 8.7, 8.7, 8.7, 8.7, 8.0, 8.0,…
$ max_label <dbl> 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11…
$ min_zoom <dbl> 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, …
$ wikidataid <chr> "Q36315", "Q36723", "Q36690", "Q36662", "Q36672", "Q36…
$ name_ar <chr> "محافظة كون توم", "محافظة داك نونغ", "محافظة داك لاك",…
$ name_bn <chr> "কন্ তুম", "ডাক নোং", "ডাক লাক", "জিয়া লিয়া", "বিন পো", …
$ name_de <chr> "Kon Tum", "Đắk Nông", "Đắk Lắk", "Gia Lai", "Bình Phư…
$ name_en <chr> "Kon Tum", "Đắk Nông", "Đắk Lắk", "Gia Lai", "Bình Phư…
$ name_es <chr> "Kon Tum", "Đăk Nông", "Đắk Lắk", "Gia Lai", "Bình Phư…
$ name_fr <chr> "Kon Tum", "Đắk Nông", "Đắk Lắk", "Gia Lai", "Bình Phư…
$ name_el <chr> "Κον Τουμ", "Ντακ Νονγκ", "Ντακ Λακ", "Γκία Λέι", "Μπι…
$ name_hi <chr> "कॉन टम प्रांत", "डाक नोंग", "डाक लाक", "जिया लाई प्रांत", …
$ name_hu <chr> "Kon Tum", "Đắk Nông", "Đắk Lắk", "Gia Lai", "Bình Phư…
$ name_id <chr> "Kon Tum", "Dak Nong", "Dak Lak", "Gia Lai", "Binh Phu…
$ name_it <chr> "Kon Tum", "Dak Nong", "Dak Lak", "Gia Lai", "Binh Phu…
$ name_ja <chr> "コントゥム省", "ダクノン省", "ダクラク省", "ザライ省"…
$ name_ko <chr> "꼰뚬성", "닥농성", "닥락성", "잘라이성", "빈프억성", …
$ name_nl <chr> "Kon Tum", "Đắk Nông", "Đắk Lắk", "Gia Lai", "Bình Phư…
$ name_pl <chr> "Prowincja Kon Tum", "Prowincja Đăk Nông", "Prowincja …
$ name_pt <chr> "Kon Tum", "Dak Nong", "Dac Lac", "Gia Lai", "Binh Phu…
$ name_ru <chr> "Контум", "Дакнонг", "Даклак", "Зялай", "Биньфыок", "Т…
$ name_sv <chr> "Kon Tum", "Dak Nong", "Dak Lak", "Gia Lai", "Binh Phu…
$ name_tr <chr> "Kon Tum", "Dak Nong", "Dak Lak", "Gia Lai", "Bình Phư…
$ name_vi <chr> "Kon Tum", "Đắk Nông", "Đắk Lắk", "Gia Lai", "Bình Phư…
$ name_zh <chr> "昆嵩省", "得农省", "多乐省", "嘉莱省", "平福省", "西…
$ ne_id <dbl> 1159308305, 1159315895, 1159309225, 1159309227, 115930…
$ name_he <chr> "קון טום", "דאק נאונגם", "דאקלאק", "יה לאי", "בין פייק…
$ name_uk <chr> "Контум", "Дакнонг", "Даклак", "Зялай", "Біньфиок", "Т…
$ name_ur <chr> "کون تم صوبہ", "داک نونگ صوبہ", "داک لاک صوبہ", "گیا ل…
$ name_fa <chr> "استان کون توم", "استان داک نونگ", "استان داک لاک", "ا…
$ name_zht <chr> "崑嵩省", "得農省", "多樂省", "嘉萊省", "平福省", "西…
$ FCLASS_ISO <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_US <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_FR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_RU <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_ES <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_CN <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_TW <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_IN <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_NP <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_PK <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_DE <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_GB <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_BR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_IL <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_PS <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_SA <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_EG <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_MA <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_PT <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_AR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_JP <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_KO <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_VN <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_TR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_ID <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_PL <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_GR <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_IT <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_NL <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_SE <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_BD <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_UA <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ FCLASS_TLC <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
$ geometry <MULTIPOLYGON [°]> MULTIPOLYGON (((107.4238 14..., MULTIPOLY…
ggplot() + geom_sf(data = vietnam) + theme_minimal()
world %>% arrange(region_wb) %>% pull(region_wb) %>% unique()
[1] "Antarctica" "East Asia & Pacific"
[3] "Europe & Central Asia" "Latin America & Caribbean"
[5] "Middle East & North Africa" "North America"
[7] "South Asia" "Sub-Saharan Africa"
southasia <- world %>% filter(region_wb == "South Asia")
ggplot() + geom_sf(data = southasia) + theme_minimal()
southasia <- world %>% filter(region_wb == "Sub-Saharan Africa")
ggplot() + geom_sf(data = southasia, aes(fill = admin)) + theme(legend.position="none")
world %>% arrange(region_wb) %>% pull(region_un) %>% unique()
[1] "Antarctica" "Seven seas (open ocean)"
[3] "Oceania" "Asia"
[5] "Europe" "Americas"
[7] "Africa"
ggplot() + geom_sf(data = world, aes(fill = admin)) + theme(legend.position="none") +
facet_wrap(.~region_wb)
library(readxl)
gini_vietnam <- read_excel('le/DataVN.xls')
glimpse(gini_vietnam)
Rows: 63
Columns: 16
$ id <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1…
$ province <chr> "Ha Noi", "Vinh Phuc", "Bac Ninh", "Quan…
$ `sub region` <chr> "Red River Delta", "Red River Delta", "R…
$ gini <dbl> 0.33792, 0.28408, 0.28756, 0.26028, 0.29…
$ icgap <dbl> 6.321822, 4.780697, 4.984416, 4.298525, …
$ top20 <dbl> 42.06828, 39.48452, 38.98663, 36.46464, …
$ `GDP 2021 (Billion VND)` <dbl> 1067540.0, 136183.0, 227614.6, 238186.3,…
$ `GDPPC (Thoudsand VND)` <dbl> 128143.29, 114268.57, 155586.04, 176323.…
$ Investment <dbl> 411261.000, 45796.747, 58219.000, 88728.…
$ emp <dbl> 46.09, 47.83, 51.02, 48.44, 48.02, 48.81…
$ lit <dbl> 98.94, 98.66, 98.35, 97.15, 98.73, 99.19…
$ edu <dbl> 23.9, 9.1, 9.7, 11.3, 8.0, 13.0, 7.5, 5.…
$ pop <dbl> 8330.83, 1191.78, 1462.95, 1350.85, 1936…
$ poprate <dbl> 1.02, 1.74, 3.04, 0.99, 1.04, 0.92, 1.21…
$ ubrate <dbl> 49.15915, 30.06679, 36.64855, 67.85950, …
$ `General average income` <dbl> 6002, 4511, 4917, 3992, 4304, 5093, 4192…
vietnam %>% arrange(name_alt) %>% distinct(name_alt)
gini_vietnam %>% arrange(province) %>% distinct()
vietnam %>% anti_join(gini_vietnam, by = c('name_alt' = 'province')) %>% arrange(name_alt) %>% distinct(name_alt)
gini_vietnam %>% drop_na(gini) %>% anti_join(vietnam, by = c('province'= 'name_alt')) %>% arrange(province) %>% distinct(province)
vietnam_gini <- vietnam %>% left_join(gini_vietnam, by = c("name_alt" = "province"))
library(sf)
jpn <- st_read(system.file("extdata", "jpn.geojson", package = "sf"))